from django.test import TestCase

# Create your tests here.
if __name__ == '__main__':
    class Master(object):
        def __init__(self):
            self.kongfu = "古法煎饼果子配方"  # 实例变量，属性

        def make_cake(self):  # 实例方法，方法
            print("[古法] 按照 <%s> 制作了一份煎饼果子..." % self.kongfu)


    class Prentice(Master):  # 多继承，继承了多个父类
        def __init__(self):
            self.kongfu = "猫氏煎饼果子配方"

        def make_cake(self):
            self.__init__()  # 执行本类的__init__方法，做属性初始化 self.kongfu = "猫氏...."
            print('-------'*30)
            super().make_cake()
            print('========' * 30)
            print("[猫氏] 按照 <%s> 制作了一份煎饼果子..." % self.kongfu)

        # 调用父类方法格式：父类类名.父类方法(self)
        def make_old_cake(self):
            # 可以通过执行Master类的__init__方法，来修改self的属性值
            Master.__init__(self)  # 调用了父类Master的__init__方法 self.kongfu = "古法...."
            Master.make_cake(self)  # 调用父类Master的实例方法


    # 实例化对象，自动执行子类的__init__方法
    damao = Prentice()

    damao.make_cake()  # 调用子类的方法（默认重写了父类的同名方法）
